An appliance may be deployed in a network to filter, compress, accelerate, or otherwise process network communications. While some appliances include a predetermined or hardwired configuration, others have the capability to receive configuration commands from a user or administrator to customize various features, filters, policies, or services of the device. Where an appliance only has a single processor or single core, a configuration command may be loaded and executed on that core. Failures in executing the command, due to syntax errors, lack of memory, programming bugs, or other reasons, may be communicated to the user or administrator. Accordingly, whether the command succeeded or failed to execute, the user or administrator knows the current “live” configuration of the appliance. Thus, the user or administrator can determine what further commands to send.
However, this may not be true in a multi-core appliance. Because a command may succeed on a first core and fail on a second core, the appliance may have an inconsistent configuration between multiple cores. A further command sent by the user or administrator may execute differently on the cores due to the inconsistent configuration, complicating the inconsistency.